The invention relates to computers in which two or more instructions are decoded in parallel.
In general, a computer program consists of a sequence of instructions. The instructions are usually executed serially (one at a time) no a computer system.
To speed up the execution of a computer program, it may be possible to execute groups of two or more instructions concurrently (in parallel), rather than sequentially (in series). To execute a group of two or more instructions in parallel, the group of two or more instructions must first be decoded in parallel. To decode a group of two or more instructions in parallel, the starting addresses of all of the instructions in the group must be determined.
If all of the instructions in a computer program have the same fixed length, the starting addresses of all instructions in a group will then bear a fixed relationship to the starting address of the first instruction of the group. However, if the instructions have varying lengths, both the starting address and the length of a preceding instruction in the group must be determined before the starting address of the next instruction in the group can be obtained.